home *** CD-ROM | disk | FTP | other *** search
- #ifndef DVRFUNCS_H
- #define DVRFUNCS_H
-
- //----------------------
- // CONSTANT DEFINITIONS
- //----------------------
- #define FALSE 0
- #define TRUE 1
-
- #define MISSING 0
- #define LOADED 1
-
- #define EXTENDED_MEM_VOC 1
- #define STOPPED 0
- #define PLAYING 1
- #define PAUSED 2
-
- //-------------------
- // MACRO DEFINITIONS
- //-------------------
- #define HIBYTE(word) (word >> 8)
- #define LOBYTE(word) (word & 0x0ff)
-
- #ifndef MK_FP // Make a far pointer
- #define MK_FP(seg,ofs)((char _far *)((unsigned long)seg << 16) + ofs)
- #endif
-
- //---------------------
- // SBSIM ERROR MESSAGES
- //---------------------
- typedef enum {SIMerr_NoErr, // No error occured
- SIMerr_IsBusy, // SBSIM currently in use
- SIMerr_BadDriver, // Bad driver specified
- SIMerr_BadFunction, // Bad function specified
- SIMerr_VoiceActive, // A voice process is already active
- SIMerr_VMEMnoStart, // Couldn't start CT-VOICE
- SIMerr_VDSKnoStart, // Couldn't start CTVDSK
- SIMerr_BadSIMhandle, // Invalid SBSIM handle
- SIMerr_BadBuffer, // Buffer not initialized yet
- SIMerr_BadFile, // Bad file name given
- SIMerr_BadFileHandle, // Bad file handle
- SIMerr_NotInited, // Driver not started yet
- SIMerr_NoXMS, // XMS driver not installed
- SIMerr_NoSIMfree, // No free SBSIM handles
- SIMerr_BadFileType, // Bad file type specified
- SIMerr_BadFreeXMS, // Couldn't free XMS block
- SIMerr_AuxBadSource, // Invalid source selected
- SIMerr_BadPanGet, // Get pan position failed
- SIMerr_BadPanSet, // Set pan position failed
- SIMerr_BadVolSet, // Set volume failed
- SIMerr_FPbadStart, // Couldn't start fade/pan
- SIMerr_FPbadStop, // Couldn't stop fade/pan
- SIMerr_FPbadPause, // Couldn't pause fade/pan
- SIMerr_FPbadType, // Not a fade/pan operation
- SIMerr_FPbadMode, // Bad mode for fade/pan
- SIMerr_FPfailed, // Couldn't start fade/pan
- SIMerr_FPnotFadePan, // Source not fading/panning
- SIMerr_MusicActive, // FM or MIDI already playing
- SIMerr_BadMapper // Bad MIDI mapper format
- } SIMERR;
-
-
- //--------------
- // ENUMERATIONS
- //--------------
- typedef enum {FM, DskVoice, MemVoice, AuxDrv, Midi} DRIVER;
- typedef enum {MASTER, VOICE, SYNTH, CD, LINE, MIC} SOURCE;
-
- //------------------------
- // STRUCTURE DEFINITIONS
- //------------------------
- // driver information structure
- typedef struct
- {
- int status;
- long entry,
- bufLoc;
- unsigned int bufSize;
- } DVRINFO;
-
- //------------------
- // GLOBAL VARIABLES
- //------------------
- extern int SIMint;
- extern char *errorMsg[];
-
- //------------------------
- // FUNCTION PROTOTYPES
- //------------------------
- int GetDvrInfo(DRIVER, DVRINFO *);
-
- SIMERR FreeExtMem(int),
- GetAddress(DRIVER, long *),
- GetBufInfo(DRIVER, long *, unsigned *),
- GetVolume(SOURCE, unsigned *),
- LoadExtMem(void far *),
- PlaySnd(DRIVER),
- StartSnd(DRIVER, void far *, char, int),
- SetVolume(SOURCE, unsigned);
-
- unsigned FindDvr(char *, unsigned int),
- GetSndStat(DRIVER),
- GetDrvrs(void),
- Version(void);
-
- void StopSnd(DRIVER),
- PauseSnd(DRIVER),
- ResumeSnd(DRIVER);
-
- #endif